OneThird CMS

Lightweight CMS for Small website, Web application framework.

Download Document

english

テーマについての概要

OneThird CMSでは、既存のHTMLに最小5行追加するだけでテンプレート化する事ができます

ただし、1点注意する点があります

テーマデータ内に絶対パスを直接書かず、テンプレートタグなどを使うことです


テーマの収納場所

OneThird CMSでは、HTMLがほぼそのまま使えます


インストールフォルダ/files/1/data

以下にHTMLファイル一式をコピーしてください


このdataフォルダ以下にある特殊ファイルの役割を解説します

admin.css ... 管理画面用のcssファイル

admin.tpl ... 管理画面用のテンプレートファイル

comm.less ... ボタンやグラデーションなどのCSSパーツのlessファイル

default.tpl ... 通常ページのテンプレート

theme.less ... 通常ページのlessファイル(default.tplから呼び出される)

theme.css ... theme.lessファイルをコンパイルし自動生成されたもの

theme.php ... システムナビや、パンくずリストなどテーマ依存する部分のプログラム


テーマファイルの準備

OneThird CMSでは、ページテンプレートの指定がなければ、default.tplが呼び出されます

default.tpl は、通常のHTMLと同じ書式ですが、OneThird CMSとしての機能を盛り込むためにOneThird CMSのタグを埋め込む必要があります(なければ、通常のHTMLとして表示されるだけで、エラーは出ません)


既存のHTMLのindex.htmlをdefault.tplという名前に変更してください

そして、その内部に書いてある、外部ファイルを以下のテンプレートタグを利用してパス情報を削除した形で記載してください


{$params['data_url']}  ...  files/../data を示すURLに展開されます

{$config['site_url']}  ...  サイトを示すURLに展開されます


< img src="/files/1/data/img/test.jpg" />

→ < img src="{params['data_url']}img/test.jpg" />



テンプレートタグの挿入

OneThird CMSを動作させるためのタグはHTMLのヘッダ部分と、bodyタグ直後、とじタグ部分の直前の3箇所に入れてください

デフォルトテーマが参考になるでしょう


例:デフォルトテーマ

<head>  

{$load('php',".data/theme")}  {$ut->expand('head')}  

<meta name="viewport" content="width=device-width, initial-scale=1,...  

<link rel="stylesheet" href="{$config['site_url']}css/base.css" />  

{$load('less',"https://onethird.net/css/onethird.8")}  

{$load('less',"{$params['data_url']}theme")}

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js".....  

{$ut->expand('css',1)}{$ut->expand_sorted('js',1)} 

</head>

</body>


......

{$ut->expand('meta')} 

</body>



なお、jQueryはOneThirdを動作させるため必要ですので必ずロードしてください


$ut->expand('article')を挿入する

$ut->expand('article')は、ページ本文を展開するテンプレートタグです

HTMLの本文に当たる部分に挿入してください


ページテンプレート内で使用できるテンプレートタグ

ページテンプレート内では、その他にも使用できるタグがあります

必要に応じて利用してください

詳しくはテンプレートタグを参照してください

よく使うタグは

$link ... リンクを挿入する(パス自動調整機能付き)

$edit ... 編集可能なボックスを挿入する

などがあります


また、plugin.php内にphpプログラムを書く事により、任意のプラグラムの呼び出しが行えます

例. timeを呼び出す

{$call('time')}


注意

1. $callタグでは、引数に配列を取れない関数、またはsystemに影響をおよぼす関数の呼び出しはできません

2. tplファイルは、phpコマンドが記載できるため事実上phpファイルと同様のセキュリティが求められます

htaccessで、閲覧できないように設定してください

(正常なインストールでは閲覧できないように設定されます)